package com.csun.cmny.provider.dao;

import com.csun.cmny.provider.model.domain.DmcControllerCardBind;
import com.csun.cmny.provider.model.dto.device.DevicePageQuery;
import com.csun.cmny.provider.model.vo.card.ControllerCardVo;
import com.csun.cmny.provider.model.vo.rfid.DmcRfidReaderVo;
import tk.mybatis.mapper.common.Mapper;

import java.util.List;

public interface DmcControllerCardBindMapper extends Mapper<DmcControllerCardBind> {

    /**
     * query controller card list with page
     *
     * @param devicePageQuery the device page query
     *
     * @return the controller card vo list.
     */
    List<ControllerCardVo> queryListWithPage(DevicePageQuery devicePageQuery);

    /**
     * query not bind rfid reader
     *
     * @param devicePageQuery   the device page query
     *
     * @return  the dmc rfid reader vo list
     */
    List<DmcRfidReaderVo> queryNotBindRfidReader(DevicePageQuery devicePageQuery);

    /**
     * 查询门禁控制Id
     *
     * @param rfidReaderId the rfid reader id
     *
     * @return the controller card
     */
    ControllerCardVo queryControllerCardByRfidReaderId(Long rfidReaderId);

    /**
     * query controller card by device no
     *
     * @param deviceNo the device no
     *
     * @return the controller card vo
     */
    ControllerCardVo queryControllerCardByDeviceNo(String deviceNo);
}